package com.fengkai.filepost.pdfoutstream.test.ODsolutions;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;

/**
 * @author Fengkai
 * @creat 2023/4/11
 * 输入描述
 * 第一行:整数n取值范围[1,1000],表示有n户家庭。
 * 第二行:一组整数m取值范围[0,10000]，表示每户家庭的位置，所有家庭的位置都不相同。
 * 输出描述
 * 一个整数,确定的学校的位置，如果有多个位置,则输出最小的。
 */
public class NewSchoolStation {
    public static void main (String[] args) {
        System.out.println(findMiddle("1 15 17 20 102"));

    }
    //找中位数即可
    public static int findMiddle (String input) {
        String[] s = input.split(" ");
        int[] ints = new int[s.length];
        int i = 0;
        for (String s1 : s) {
            ints[i++] = Integer.parseInt(s1);
        }
        Arrays.sort(ints);

        return ints[(s.length - 1)/2 ];
    }

    public static int findMiddle2 (String input)  {
        // 处理输入
        List<Integer> nodes =Arrays.stream(input.split(" "))
                .map(Integer::parseInt)
                .collect(Collectors.toList());
        int count  = nodes.size();
        Collections.sort(nodes);
        if (count % 2 == 0) {
           return  nodes.get((count-1)/2);
        } else {
          return nodes.get(count/2);
        }
    }
}
